#ifndef FILEINFO_H
#define FILEINFO_H

#include <QList>
#include <QString>
#include <QVector>

// 文件类型枚举
enum class FileType
{
    Image, // 图片文件
    Video, // 视频文件
    Other  // 其他文件
};

// 文件信息结构体
struct FileInfo
{
    QString fileName;                // 文件名
    QString filePath;                // 文件路径
    qint64 fileSize;                 // 文件大小（字节）
    FileType fileType;               // 文件类型
    QString contentType;             // 文件内容类型（使用字符串）
    QString contentDescription;      // 文件内容详细描述
    QVector<float> contentEmbedding; // 文件内容详细描述嵌入向量
    QList<QString> peopleNames;      // 文件包含的人名列表

    // 构造函数，初始化默认值
    FileInfo()
        : fileSize(0), fileType(FileType::Other), contentType("其他"),
          peopleNames(QList<QString>() << "未知")
    {
    }
};

#endif // FILEINFO_H
